/**
 * SysUser.java -- 2017-10-16 18:10:24
 * 作者：欧增奇 -- 代码生成器自动生成
 * 联系方式：425752797@qq.com
 * http://www.ouzengqi.com/
 */
package com.ozq.sys.dao.entity;

import java.util.Date;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import org.springframework.format.annotation.DateTimeFormat;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ozq.common.dao.entity.BasicEntity;

/**
 * <系统-用户表实体类> <功能详细描述>
 * 
 * @author 欧增奇
 * @version [V2.0, 2017年10月16日]
 * @see [相关类/方法]
 * @since [产品/模块版本]
 */
public class SysUser extends BasicEntity
{
    static Logger logger = LoggerFactory.getLogger(SysUser.class);

    /**
     * 序列化ID
     */
    private static final long serialVersionUID = -7585794501905523822L;

    /** -----------------------------公共-静态-属性----------------------------- **/
    /**
     * 表名-系统-用户表[sys_user]
     */
    public static String TABLE_NAME = "sys_user";
    /**
     * 字段-用户id[user_id]
     */
    public static String FIELD_USER_ID = "user_id";
    /**
     * 字段-昵称[user_nick_name]
     */
    public static String FIELD_USER_NICK_NAME = "user_nick_name";
    /**
     * 字段-qq的openId[open_id]
     */
    public static String FIELD_OPEN_ID = "open_id";
    /**
     * 字段-头像地址[user_figure_url]
     */
    public static String FIELD_USER_FIGURE_URL = "user_figure_url";
    /**
     * 字段-扩展属性关联[text_code]
     */
    public static String FIELD_TEXT_CODE = "text_code";
    /**
     * 字段-用户code[user_code]
     */
    public static String FIELD_USER_CODE = "user_code";
    /**
     * 字段-注册时间[user_register_time]
     */
    public static String FIELD_USER_REGISTER_TIME = "user_register_time";
    /**
     * 字段-最后一次登录时间[user_last_time]
     */
    public static String FIELD_USER_LAST_TIME = "user_last_time";

    /** -----------------------------私有-属性----------------------------- **/
    /**
     * 属性-用户id[user_id]
     */
    private Integer userId;
    /**
     * 属性-昵称[user_nick_name]
     */
    private String userNickName;
    /**
     * 属性-qq的openId[open_id]
     */
    private String openId;
    /**
     * 属性-头像地址[user_figure_url]
     */
    private String userFigureUrl;
    /**
     * 属性-扩展属性关联[text_code]
     */
    private String textCode;
    /**
     * 属性-用户code[user_code]
     */
    private String userCode;
    /**
     * 属性-注册时间[user_register_time]
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date userRegisterTime;
    /**
     * 属性-最后一次登录时间[user_last_time]
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date userLastTime;

    /** -----------------------------创建-构造----------------------------- **/
    /**
     * 无参数构建
     */
    public SysUser()
    {
    }

    /** -----------------------------公共-方法----------------------------- **/
    /**
     * 获取-用户id[userId][user_id]-属性值
     * 
     * @return userId值
     */
    public Integer getUserId()
    {
        return userId;
    }
    
    /**
     * 设置-用户id[userId][test_id]-属性值
     * 
     * @param userId-需要设置用户id[user_id]值
     */
    public void setUserId(Integer userId)
    {
        this.userId = userId;
    }
    
    /**
     * 获取-昵称[userNickName][user_nick_name]-属性值
     * 
     * @return userNickName值
     */
    public String getUserNickName()
    {
        return userNickName;
    }
    
    /**
     * 设置-昵称[userNickName][test_id]-属性值
     * 
     * @param userNickName-需要设置昵称[user_nick_name]值
     */
    public void setUserNickName(String userNickName)
    {
        this.userNickName = userNickName;
    }
    
    /**
     * 获取-qq的openId[openId][open_id]-属性值
     * 
     * @return openId值
     */
    public String getOpenId()
    {
        return openId;
    }
    
    /**
     * 设置-qq的openId[openId][test_id]-属性值
     * 
     * @param openId-需要设置qq的openId[open_id]值
     */
    public void setOpenId(String openId)
    {
        this.openId = openId;
    }
    
    /**
     * 获取-头像地址[userFigureUrl][user_figure_url]-属性值
     * 
     * @return userFigureUrl值
     */
    public String getUserFigureUrl()
    {
        return userFigureUrl;
    }
    
    /**
     * 设置-头像地址[userFigureUrl][test_id]-属性值
     * 
     * @param userFigureUrl-需要设置头像地址[user_figure_url]值
     */
    public void setUserFigureUrl(String userFigureUrl)
    {
        this.userFigureUrl = userFigureUrl;
    }
    
    /**
     * 获取-扩展属性关联[textCode][text_code]-属性值
     * 
     * @return textCode值
     */
    public String getTextCode()
    {
        return textCode;
    }
    
    /**
     * 设置-扩展属性关联[textCode][test_id]-属性值
     * 
     * @param textCode-需要设置扩展属性关联[text_code]值
     */
    public void setTextCode(String textCode)
    {
        this.textCode = textCode;
    }
    
    /**
     * 获取-用户code[userCode][user_code]-属性值
     * 
     * @return userCode值
     */
    public String getUserCode()
    {
        return userCode;
    }
    
    /**
     * 设置-用户code[userCode][test_id]-属性值
     * 
     * @param userCode-需要设置用户code[user_code]值
     */
    public void setUserCode(String userCode)
    {
        this.userCode = userCode;
    }
    
    /**
     * 获取-注册时间[userRegisterTime][user_register_time]-属性值
     * 
     * @return userRegisterTime值
     */
    public Date getUserRegisterTime()
    {
        return userRegisterTime;
    }
    
    /**
     * 设置-注册时间[userRegisterTime][test_id]-属性值
     * 
     * @param userRegisterTime-需要设置注册时间[user_register_time]值
     */
    public void setUserRegisterTime(Date userRegisterTime)
    {
        this.userRegisterTime = userRegisterTime;
    }
    
    /**
     * 获取-最后一次登录时间[userLastTime][user_last_time]-属性值
     * 
     * @return userLastTime值
     */
    public Date getUserLastTime()
    {
        return userLastTime;
    }
    
    /**
     * 设置-最后一次登录时间[userLastTime][test_id]-属性值
     * 
     * @param userLastTime-需要设置最后一次登录时间[user_last_time]值
     */
    public void setUserLastTime(Date userLastTime)
    {
        this.userLastTime = userLastTime;
    }
    
    /*
     * (non-Javadoc)
     * 
     * @see java.lang.Object#toString()
     */
    @Override
    public String toString()
    {
        return ToStringBuilder.reflectionToString(this);
    }
}